package com.hyny.framework.platform.system.entity.param;


import com.hyny.framework.platform.system.enums.MenuStatusEnum;
import com.hyny.framework.platform.system.enums.MenuTypeEnum;
import com.hyny.framework.base.enums.YesOrNoEnum;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

/**
 * 菜单请求参数
 */
@ApiModel("菜单")
@Data
public class MenuParam {
    /**
     * 父菜单ID
     **/
    @ApiModelProperty(value="父菜单ID",required=true,position=1)
    private String parentId;

    /**
     * 菜单名称
     **/
    @ApiModelProperty(value="菜单名称",required=true,position=2)
    private String title;
    /**
     * 字段权限id
     **/
    @ApiModelProperty(value="字段权限编码",required=true,position=3)
    private String fieldPowerId;
    /**
     * 组件地址
     **/
    @ApiModelProperty(value="组件地址",position=4)
    private String component;


    /**
     * 路由地址
     **/
    @ApiModelProperty(value="路由地址",position=5)
    private String path;


    /**
     * 菜单类型（M目录 C菜单 F按钮）
     **/
    @ApiModelProperty(value="菜单类型,对应枚举：MenuTypeEnum",required=true,notes = "com.hyny.framework.platform.system.enums.MenuTypeEnum",position=6)
    private MenuTypeEnum menuType;


    /**
     * 是否隐藏（0显示 1隐藏）
     **/
    @ApiModelProperty(value="是否隐藏,对应枚举：YesOrNoEnum",notes = "com.hyny.framework.base.enums.YesOrNoEnum",position=7)
    private YesOrNoEnum visible;


    /**
     * 菜单状态（1正常 0停用）
     **/
    @ApiModelProperty(value="菜单状态,对应枚举：MenuStatusEnum",notes = "com.hyny.framework.platform.system.enums.MenuStatusEnum",position=8)
    private MenuStatusEnum status;


    /**
     * 权限标识
     **/
    @ApiModelProperty(value="权限标识",position=9)
    private String permissions;


    /**
     * 菜单图标
     **/
    @ApiModelProperty(value="菜单图标",position=10)
    private String icon;


    /**
     * 显示顺序
     **/
    @ApiModelProperty(value="显示顺序",required=true,position=11)
    private Long sort;
}
